home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 August / macformat-027.iso / mac / Shareware City / Developers / Oberon⁄F / Mac / Mod / CQuickDraw (.txt) < prev    next >
Encoding:
Oberon Document  |  1994-06-07  |  10.0 KB  |  243 lines  |  [oODC/obnF]

  1. Documents.StdDocumentDesc
  2. Documents.DocumentDesc
  3. Containers.ViewDesc
  4. Views.ViewDesc
  5. Stores.StoreDesc
  6. Documents.ModelDesc
  7. Containers.ModelDesc
  8. Models.ModelDesc
  9. Stores.ElemDesc
  10. TextViews.StdViewDesc
  11. TextViews.ViewDesc
  12. TextModels.StdModelDesc
  13. TextModels.ModelDesc
  14. TextModels.AttributesDesc
  15. Geneva
  16. Geneva
  17. StdStamps.StdViewDesc
  18. Geneva
  19. MODULE MacCQuickDraw;
  20. (* cp, cas 
  21.     IMPORT SYSTEM, MacTypes, MacQuickDraw;
  22.     CONST
  23.         (** Old-style grafPort colors **)
  24.         blackColor* = 33;
  25.         whiteColor* = 30;
  26.         redColor* = 205;
  27.         greenColor* = 341;
  28.         blueColor* = 409;
  29.         cyanColor* = 273;
  30.         magentaColor* = 137;
  31.         yellowColor* = 69;
  32.         (** Arithmetic transfer modes **)
  33.         blend* = 32;
  34.         addPin* = 33;
  35.         addOver* = 34;
  36.         subPin* = 35;
  37.         adMax* = 37;
  38.         subOver* = 38;
  39.         adMin* = 39;
  40.         (** transparent mode constant **)
  41.         transparent* = 36;
  42.         (** Text mask constant **)
  43.         mask* = 64;
  44.         (** Highlight constants **)
  45.         hilite* = 50;
  46.         pHiliteBit* = 0;
  47.         (** Constant for resource IDs **)
  48.         defQDColors* = 127;
  49.         HANDLE = 2;
  50.         UNTAGGED = 1;
  51.         CODE = 1; NOSTKCHK = 4;
  52.     TYPE
  53.         RGBColor* = RECORD (MacTypes.Data)
  54.             red*, green*, blue*: INTEGER
  55.         END;
  56.         ColorSpec* = RECORD (MacTypes.Data)
  57.             value*: INTEGER;
  58.             rgb*: RGBColor
  59.         END;
  60.         CTabHandle* = POINTER [HANDLE] TO ColorTable;
  61.         CTabPtr* = POINTER TO ColorTable;
  62.         ColorTable* = RECORD (MacTypes.Data)
  63.             ctSeed*: LONGINT;
  64.             ctFlags*: INTEGER;
  65.             ctSize*: INTEGER;
  66.             ctTable*: ARRAY [UNTAGGED] 1 OF ColorSpec
  67.         END;
  68.         PixMapHandle* = POINTER [HANDLE] TO PixMap;
  69.         PixMap* = RECORD (MacQuickDraw.BitMap)
  70.             pmVersion*: INTEGER;
  71.             packType*: INTEGER;
  72.             packSize*: LONGINT;
  73.             hRes*: MacTypes.Fixed;
  74.             vRes*: MacTypes.Fixed;
  75.             pixelType*: INTEGER;
  76.             pixelSize*: INTEGER;
  77.             cmpCount*: INTEGER;
  78.             cmpSize*: INTEGER;
  79.             planeBytes*: LONGINT;
  80.             pmTable*: CTabHandle;
  81.             pmReserved: LONGINT
  82.         END;
  83.         PixPatHandle* = POINTER [HANDLE] TO PixPat;
  84.         PixPatPtr* = POINTER TO PixPat;
  85.         PixPat* = RECORD (MacTypes.Data)
  86.             patType*: INTEGER;
  87.             patMap*: PixMapHandle;
  88.             patData*: MacTypes.Handle;
  89.             patXData*: MacTypes.Handle;
  90.             patXValid*: INTEGER;
  91.             patXMap*: MacTypes.Handle;
  92.             pat1Data*: MacQuickDraw.Pattern
  93.         END;
  94.         CQDProcsPtr* = POINTER TO CQDProcs;
  95.         CQDProcs* = RECORD (MacQuickDraw.QDProcs)
  96.             opcodeProc*: MacTypes.ProcPtr;
  97.             newProc1*, newProc2*, newProc3*,
  98.             newProc4*, newProc5*, newProc6*: MacTypes.ProcPtr
  99.         END;
  100.         CCrsrHandle* = POINTER [HANDLE] TO CCrsr;
  101.         CCrsrPtr* = POINTER TO CCrsr;
  102.         CCrsr* = RECORD (MacTypes.Data)
  103.             crsrType*: INTEGER;
  104.             crsrMap*: PixMapHandle;
  105.             crsrData*: MacTypes.Handle;
  106.             crsrXData*: MacTypes.Handle;
  107.             crsrXValid*: INTEGER;
  108.             crsrXHandle*: MacTypes.Handle;
  109.             crsr1Data*: ARRAY [UNTAGGED] 16 OF INTEGER;
  110.             crsrMask*: ARRAY [UNTAGGED] 16 OF INTEGER;
  111.             crsrHotSpot*: MacQuickDraw.Point;
  112.             crsrXTable*: LONGINT;
  113.             crsrID*: LONGINT
  114.         END;
  115.         CIconHandle* = POINTER [HANDLE] TO CIcon;
  116.         CIconPtr* = POINTER TO CIcon;
  117.         CIcon* = RECORD (MacTypes.Data)
  118.             iconPMap*: PixMap;
  119.             iconMask*: PixMap;
  120.             iconBMap*: PixMap;
  121.             iconData*: PixMap
  122.             (** iconMaskData follows as record extension **)
  123.         END;
  124.         CGrafPtr* = POINTER TO CGrafPort;
  125.         CGrafPort* = RECORD (MacQuickDraw.GrafPort)
  126.             device*: INTEGER;
  127.             portPixMap*: PixMapHandle;
  128.             portVersion*: INTEGER;
  129.             grafVars*: MacTypes.Handle;
  130.             chExtra*: INTEGER;
  131.             pnLocHFrac*: INTEGER;
  132.             portRect*: MacTypes.Rect;
  133.             visRgn*: MacQuickDraw.RgnHandle;
  134.             clipRgn*: MacQuickDraw.RgnHandle;
  135.             bkPixPat*: PixPatHandle;
  136.             rgbFgColor*: RGBColor;
  137.             rgbBkColor*: RGBColor;
  138.             pnLoc*: MacTypes.Point;
  139.             pnSize*: MacTypes.Point;
  140.             pnMode*: INTEGER;
  141.             pnPixPat*: PixPatHandle;
  142.             fillPixPat*: PixPatHandle;
  143.             pnVis*: INTEGER;
  144.             txFont*: INTEGER;
  145.             txFace*: MacQuickDraw.Style;
  146.             txMode*: INTEGER;
  147.             txSize*: INTEGER;
  148.             spExtra*: MacTypes.Fixed;
  149.             fgColor*: LONGINT;
  150.             bkColor*: LONGINT;
  151.             colrBit*: INTEGER;
  152.             patStretch*: INTEGER;
  153.             picSave*: MacTypes.Handle;
  154.             rgnSave*: MacTypes.Handle;
  155.             polySave*: MacTypes.Handle;
  156.             grafProcs*: CQDProcsPtr
  157.         END;
  158.     PROCEDURE [NOSTKCHK] IsCGrafPtr* (port: MacQuickDraw.GrafPtr): BOOLEAN;
  159.         VAR v: INTEGER;
  160.     BEGIN
  161.         v := port(CGrafPtr).portVersion;
  162.         RETURN (-4000H <= v) & (v < 0)
  163.     END IsCGrafPtr;
  164.     (** Operations on cGrafPorts **)
  165.     PROCEDURE [CODE] OpenCPort* (port: CGrafPtr)    0AAH, 000H;
  166.     PROCEDURE [CODE] InitCPort* (port: CGrafPtr)    0AAH, 001H;
  167.     PROCEDURE [CODE] CloseCPort* (port: CGrafPtr)    0A8H, 07DH;
  168.     (** Setting the Foreground and Background Colors **)
  169.     PROCEDURE [CODE] RGBForeColor* (color: RGBColor)    0AAH, 014H;
  170.     PROCEDURE [CODE] RGBBackColor* (color: RGBColor)    0AAH, 015H;
  171.     PROCEDURE [CODE] GetForeColor* (VAR color: RGBColor)    0AAH, 019H;
  172.     PROCEDURE [CODE] GetBackColor* (VAR color: RGBColor)    0AAH, 01AH;
  173.     (** Creating Pixel Maps **)
  174.     PROCEDURE [CODE] NewPixMap* (): PixMapHandle    0AAH, 003H;
  175.     PROCEDURE [CODE] DisposPixMap* (pm: PixMapHandle)    0AAH, 004H;
  176.     PROCEDURE [CODE] CopyPixMap* (srcPM, dstPM: PixMapHandle)    0AAH, 005H;
  177.     (** Operations on Pixel Maps **)
  178.     PROCEDURE [CODE] CopyBits* (srcBits, dstBits: MacQuickDraw.BitMap;
  179.                                 srcRect, dstRect: MacQuickDraw.Rect;
  180.                                 mode: INTEGER; maskRgn: MacQuickDraw.RgnHandle) 0A8H, 0ECH;
  181.     PROCEDURE [CODE] CopyMask* (srcBits, maskBits, dstBits: MacQuickDraw.BitMap;
  182.                                 srcRect, maskRect, dstRect: MacQuickDraw.Rect) 0A8H, 017H;
  183.     PROCEDURE [CODE] SeedCFill* (srcBits, dstBits: MacQuickDraw.BitMap;
  184.                                 srcRect, dstRect: MacQuickDraw.Rect; seedH, seedV: INTEGER;
  185.                                 matchProc: MacTypes.ProcPtr; matchData: LONGINT)    0AAH, 050H;
  186.     PROCEDURE [CODE] CalcCMask* (srcBits, dstBits: MacQuickDraw.BitMap;
  187.                                 srcRect, dstRect: MacQuickDraw.Rect; seedRGB: RGBColor;
  188.                                 matchProc: MacTypes.ProcPtr; matchData: LONGINT)    0AAH, 04FH;
  189.     (** Operations on Pixel Patterns **)
  190.     PROCEDURE [CODE] NewPixPat* (): PixPatHandle    0AAH, 007H;
  191.     PROCEDURE [CODE] DisposPixPat* (ppat: PixPatHandle)    0AAH, 008H;
  192.     PROCEDURE [CODE] GetPixPat* (patID: INTEGER): PixPatHandle    0AAH, 00CH;
  193.     PROCEDURE [CODE] CopyPixPat* (srcPP, dstPP: PixPatHandle)    0AAH, 009H;
  194.     PROCEDURE [CODE] MakeRGBPat* (ppat: PixPatHandle; myColor: RGBColor)    0AAH, 00DH;
  195.     PROCEDURE [CODE] PenPixPat* (ppat: PixPatHandle)    0AAH, 00AH;
  196.     PROCEDURE [CODE] BackPixPat* (ppat: PixPatHandle)    0AAH, 00BH;
  197.     (** Color Drawing Operations **)
  198.     PROCEDURE [CODE] FillCRect* (r: MacQuickDraw.Rect; ppat: PixPatHandle)    0AAH, 00EH;
  199.     PROCEDURE [CODE] FillCOval* (r: MacQuickDraw.Rect; ppat: PixPatHandle)    0AAH, 00FH;
  200.     PROCEDURE [CODE] FillCRoundRect* (r: MacQuickDraw.Rect; ovWd, ovHt: INTEGER;
  201.                                 ppat: PixPatHandle)    0AAH, 010H;
  202.     PROCEDURE [CODE] FillCArc* (r: MacQuickDraw.Rect; startAngle, arcAngle: INTEGER;
  203.                                 ppat: PixPatHandle)    0AAH, 011H;
  204.     PROCEDURE [CODE] FillCRgn* (rgn: MacQuickDraw.RgnHandle; ppat: PixPatHandle)    0AAH, 012H;
  205.     PROCEDURE [CODE] FillCPoly* (poly: MacQuickDraw.PolyHandle; ppat: PixPatHandle)    0AAH, 013H;
  206.     PROCEDURE [CODE] GetCPixel* (h, v: INTEGER; VAR cPix: RGBColor)    0AAH, 017H;
  207.     PROCEDURE [CODE] SetCPixel* (h, v: INTEGER; cPix: RGBColor)    0AAH, 016H;
  208.     (** Operations on Color Cursors **)
  209.     PROCEDURE [CODE] GetCCursor* (crsrID: INTEGER): CCrsrHandle    0AAH, 01BH;
  210.     PROCEDURE [CODE] SetCCursor* (cCrsr: CCrsrHandle)    0AAH, 01CH;
  211.     PROCEDURE [CODE] DisposCCursor* (cCrsr: CCrsrHandle)    0AAH, 026H;
  212.     PROCEDURE [CODE] AllocCursor*    0AAH, 01DH;
  213.     (** Operations on Icons **)
  214.     PROCEDURE [CODE] GetCIcon* (id: INTEGER): CIconHandle    0AAH, 01EH;
  215.     PROCEDURE [CODE] DisposCIcon* (theIcon: CIconHandle)    0AAH, 025H;
  216.     PROCEDURE [CODE] PlotCIcon* (theRect: MacQuickDraw.Rect; theIcon: CIconHandle)    0AAH, 01FH;
  217.     (** Operations on cGrafPort Fields **)
  218.     PROCEDURE [CODE] SetCPortPix* (pm: PixMapHandle)    0AAH, 006H;
  219.     PROCEDURE [CODE] OpColor* (color: RGBColor)    0AAH, 021H;
  220.     PROCEDURE [CODE] HiliteColor* (color: RGBColor)    0AAH, 022H;
  221.     PROCEDURE [CODE] CharExtra* (extra: MacTypes.Fixed)    0AAH, 023H;
  222.     PROCEDURE [NOSTKCHK] SetStdCProcs* (VAR cProcs: CQDProcs);
  223.     BEGIN
  224.         HALT(98)    (* trap code ??? *)
  225.     END SetStdCProcs;
  226.     (** Operations on Color Tables **)
  227.     PROCEDURE [CODE] GetCTable* (ctID: INTEGER): CTabHandle    0AAH, 018H;
  228.     PROCEDURE [CODE] DisposCTable* (ctTab: CTabHandle)    0AAH, 024H;
  229.     (** Color Picture Operations **)
  230.     PROCEDURE [CODE] OpenPicture* (picFrame: MacQuickDraw.Rect): MacQuickDraw.PicHandle    0A8H, 0F3H;
  231. END MacCQuickDraw.
  232. TextControllers.StdCtrlDesc
  233. TextControllers.ControllerDesc
  234. Containers.ControllerDesc
  235. Controllers.ControllerDesc
  236. TextRulers.StdRulerDesc
  237. TextRulers.RulerDesc
  238. TextRulers.StdStyleDesc
  239. TextRulers.StyleDesc
  240. TextRulers.AttributesDesc
  241. Geneva
  242. Documents.ControllerDesc
  243.